রুবি একটি শক্তিশালী ভাষা যা ফাইল এবং ডিরেক্টরি ম্যানিপুলেশনের জন্য অনেক মেথড সরবরাহ করে। এটি ফাইল তৈরি, পড়া, লেখা, মুছতে এবং ডিরেক্টরি তৈরি, পরিবর্তন, মুছতে সহায়ক। এই অংশে আমরা রুবিতে ফাইল এবং ডিরেক্টরি ম্যানিপুলেশন সম্পর্কিত গুরুত্বপূর্ণ ফিচার এবং মেথডগুলি দেখবো।
File ম্যানিপুলেশন
রুবিতে ফাইল ম্যানিপুলেশন করার জন্য File ক্লাস ব্যবহার করা হয়। এর মাধ্যমে আপনি ফাইল তৈরি, পড়া, লেখা, মুছতে পারেন।
1. File তৈরি (Creating a File)
ফাইল তৈরি করতে File.new অথবা File.open মেথড ব্যবহার করা হয়। ফাইলটি যদি না থাকে, তবে এটি তৈরি করা হয়।
উদাহরণ:
file = File.new("example.txt", "w") # 'w' মোডে ফাইল তৈরি করা
file.puts "Hello, Ruby!" # ফাইলে লেখা
file.close # ফাইল বন্ধ করাএখানে, "example.txt" ফাইলটি তৈরি করা হয়েছে এবং "Hello, Ruby!" লেখা হয়েছে।
2. File পড়া (Reading a File)
ফাইল পড়তে File.open বা File.read মেথড ব্যবহার করা হয়। .read ফাইলের পুরো কন্টেন্ট পড়ে এনে একটি স্ট্রিং আকারে রিটার্ন করে।
উদাহরণ:
file = File.open("example.txt", "r")
content = file.read # ফাইলের পুরো কন্টেন্ট পড়া
puts content
file.close # ফাইল বন্ধ করাএখানে, "example.txt" ফাইলের সমস্ত কন্টেন্ট পড়ে তা আউটপুট করা হয়েছে।
3. File লেখা (Writing to a File)
ফাইলে নতুন ডেটা লেখার জন্য File.open অথবা File.write মেথড ব্যবহার করা হয়। w মোডে ফাইলটি খুললে পুরানো কন্টেন্ট মুছে নতুন ডেটা লেখা হয়।
উদাহরণ:
file = File.open("example.txt", "w")
file.puts "Welcome to File I/O in Ruby!" # ফাইলে লেখা
file.close # ফাইল বন্ধ করাএখানে, "example.txt" ফাইলে "Welcome to File I/O in Ruby!" লেখা হয়েছে।
4. File মুছা (Deleting a File)
ফাইল মুছতে File.delete মেথড ব্যবহার করা হয়।
উদাহরণ:
File.delete("example.txt") # ফাইল মুছে ফেলাএখানে, "example.txt" ফাইলটি মুছে ফেলা হয়েছে।
Directory ম্যানিপুলেশন
রুবিতে ডিরেক্টরি ম্যানিপুলেশনের জন্য Dir ক্লাস ব্যবহার করা হয়। এর মাধ্যমে আপনি ডিরেক্টরি তৈরি, পরিবর্তন, তালিকা দেখতে এবং মুছতে পারেন।
1. Directory তৈরি (Creating a Directory)
ডিরেক্টরি তৈরি করতে Dir.mkdir মেথড ব্যবহার করা হয়।
উদাহরণ:
Dir.mkdir("new_directory") # নতুন ডিরেক্টরি তৈরিএখানে "new_directory" নামে একটি নতুন ডিরেক্টরি তৈরি হয়েছে।
2. Directory তালিকা (Listing Directory Contents)
ডিরেক্টরির ভিতরে কী কী ফাইল বা ফোল্ডার রয়েছে, তা দেখতে Dir.entries অথবা Dir.glob মেথড ব্যবহার করা হয়।
উদাহরণ:
entries = Dir.entries(".") # বর্তমান ডিরেক্টরির তালিকা
puts entriesএখানে, বর্তমান ডিরেক্টরির সব ফাইল এবং ফোল্ডারের নাম আউটপুট হবে।
3. Directory পরিবর্তন (Changing Directory)
ডিরেক্টরি পরিবর্তন করতে Dir.chdir মেথড ব্যবহার করা হয়।
উদাহরণ:
Dir.chdir("new_directory") # 'new_directory' তে প্রবেশ
puts Dir.pwd # বর্তমান ডিরেক্টরি দেখানোএখানে, "new_directory" ডিরেক্টরিতে চলে যাওয়ার পর, Dir.pwd মেথড দিয়ে বর্তমান ডিরেক্টরি চেক করা হয়েছে।
4. Directory মুছা (Deleting a Directory)
ডিরেক্টরি মুছতে Dir.delete মেথড ব্যবহার করা হয়। তবে, ডিরেক্টরিটি খালি থাকতে হবে, নতুবা ত্রুটি আসবে।
উদাহরণ:
Dir.delete("new_directory") # খালি ডিরেক্টরি মুছে ফেলাএখানে, "new_directory" ডিরেক্টরি মুছে ফেলা হয়েছে।
File এবং Directory এর অন্যান্য কার্যকলাপ
1. File Permissions (ফাইলের অনুমতি)
ফাইলের অনুমতি (permissions) দেখতে বা সেট করতে File.chmod এবং File.stat মেথড ব্যবহার করা হয়।
উদাহরণ:
File.chmod(0755, "example.txt") # ফাইলের অনুমতি পরিবর্তন2. Directory Traversal (ডিরেক্টরি ট্রাভার্সাল)
ডিরেক্টরি ট্রাভার্সাল করতে Dir.foreach মেথড ব্যবহার করা হয়, যা ডিরেক্টরির প্রতিটি ফাইল বা ফোল্ডারকে একে একে প্রক্রিয়া করে।
উদাহরণ:
Dir.foreach('.') do |file|
puts file
endএখানে, বর্তমান ডিরেক্টরির সব ফাইল ও ফোল্ডারের নাম আউটপুট হবে।
সারসংক্ষেপ
- File ম্যানিপুলেশন: রুবিতে ফাইল ওপেন, পড়া, লেখা, এবং মুছার জন্য
Fileক্লাস ব্যবহার করা হয়।.read,.write,.puts,.closeইত্যাদি মেথড দিয়ে ফাইল পরিচালনা করা হয়। - Directory ম্যানিপুলেশন: রুবিতে ডিরেক্টরি তৈরি, মুছা এবং তালিকা দেখতে
Dirক্লাস ব্যবহার করা হয়।mkdir,entries,chdir,deleteইত্যাদি মেথড দিয়ে ডিরেক্টরি ম্যানিপুলেশন করা হয়।
এই সব ফিচার এবং মেথড ব্যবহার করে আপনি রুবিতে ফাইল এবং ডিরেক্টরি ম্যানিপুলেশন করতে পারেন, যা বিভিন্ন ফাইল ম্যানেজমেন্ট কার্যক্রমে সহায়ক।
Read more